﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Iudicium.Servicio
{
    /// <summary>
    /// Summary description for Responsable
    /// </summary>
    public class Responsable
    {
        #region Atributos

        private int _responsableId;
        private string _nombre;
        private int _servicioId;
        private int _administrativoId;
        private DateTime _fechaInicio;
        private DateTime _fechaFin;
        private EstadoResponsable _estado;

        #endregion

        #region Propiedades

        public int ResponsableId
        {
            set { _responsableId = value; }
            get { return _responsableId; }
        }

        public string Nombre
        {
            set { _nombre = value; }
            get { return _nombre; }
        }

        public int ServicioId
        {
            set { _servicioId = value; }
            get { return _servicioId; }
        }

        public int AdministrativoId
        {
            set { _administrativoId = value; }
            get { return _administrativoId; }
        }

        public DateTime FechaInicio
        {
            set { _fechaInicio = value; }
            get { return _fechaInicio; }
        }

        public DateTime FechaFin
        {
            set { _fechaFin = value; }
            get { return _fechaFin; }
        }

        public EstadoResponsable Estado
        {
            set { _estado = value; }
            get { return _estado; }
        }

        #endregion

        public enum EstadoResponsable
        {
            Activo,
            Inactivo
        }

        public Responsable(int responsableId, int servicioId, int administrativoId, string nombre, DateTime fechaInicio, DateTime fechaFin, EstadoResponsable estado)
        {
            this._responsableId = responsableId;
            this._servicioId = servicioId;
            this._administrativoId = administrativoId;
            this._nombre = nombre;
            this._fechaInicio = fechaInicio;
            this._fechaFin = fechaFin;
            this._estado = estado;
        }

        public static EstadoResponsable GetEstadoResponsableFromString(string estado)
        {
            if (estado.Equals(EstadoResponsable.Activo.ToString()))
                return EstadoResponsable.Activo;
            return EstadoResponsable.Inactivo;

        }
    }
}